namespace PickGold.Charting
{
    using System;
    using System.ComponentModel;
    using System.Drawing;
    using System.Security.Permissions;
    using System.Web;

    [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
    public class Point3D
    {
        private System.Drawing.PointF _coordXY;
        private float _coordZ;

        public Point3D()
        {
            this._coordXY = new System.Drawing.PointF(0f, 0f);
        }

        public Point3D(float x, float y, float z)
        {
            this._coordXY = new System.Drawing.PointF(0f, 0f);
            this._coordXY = new System.Drawing.PointF(x, y);
            this._coordZ = z;
        }

        [DefaultValue(0), SRDescription("DescriptionAttributePoint3D_PointF"), Bindable(true)]
        public System.Drawing.PointF PointF
        {
            get
            {
                return this._coordXY;
            }
            set
            {
                this._coordXY = new System.Drawing.PointF(value.X, value.Y);
            }
        }

        [SRDescription("DescriptionAttributePoint3D_X"), DefaultValue(0), Bindable(true)]
        public float X
        {
            get
            {
                return this._coordXY.X;
            }
            set
            {
                this._coordXY.X = value;
            }
        }

        [Bindable(true), SRDescription("DescriptionAttributePoint3D_Y"), DefaultValue(0)]
        public float Y
        {
            get
            {
                return this._coordXY.Y;
            }
            set
            {
                this._coordXY.Y = value;
            }
        }

        [SRDescription("DescriptionAttributePoint3D_Z"), DefaultValue(0), Bindable(true)]
        public float Z
        {
            get
            {
                return this._coordZ;
            }
            set
            {
                this._coordZ = value;
            }
        }
    }
}

